The present invention relates to monitoring rules applied to software and hardware components in a system, and more specifically to declaration of the monitoring rules and automatic configuration of the monitoring rules applied to software and hardware components of a system.
One area of system management discipline of the enterprise-wide administration of a datacenter is monitoring of services' health. In this area, tools can potentially monitor any types of hardware and software components, applying the appropriate measuring to verify the adherence to predefined goals. Consequently, an effective monitoring starts from clear objectives and depends on good decisions about how and which components have to be monitored. In terms of custom software applications, an effective monitoring of these services requires a close collaboration between developers and IT operations. In fact, beyond the infrastructure monitoring, the developers declare which components (e.g. application servers, queues, database, etc.) have to be monitored and which metrics and goals to use. This way, IT operations can configure the monitoring tools with the appropriate level of details. However, this kind of work usually does not start before the application is deployed on the production environment and rarely is it maintained over the time. Due to this lack of collaboration between developers and IT operations, the monitoring tools often limit their control to checks at an infrastructure level (e.g. server, network device, etc.) and this limitation may be the cause of business disruption.